The present invention relates to communications in computer networks. More specifically, it relates to a method for network address maintenance in a data-over-cable system.
Cable television networks such as those provided by Comcast Cable Communications, Inc., of Philadelphia, Pa., Cox Communications of Atlanta Ga., Tele-Communications, Inc., of Englewood Colo., Time-Warner Cable, of Marietta Ga., Continental Cablevision, Inc., of Boston Mass., and others provide cable television services to a large number of subscribers over a large geographical area. The cable television networks typically are interconnected by cables such as coaxial cables or a Hybrid Fiber/Coaxial (xe2x80x9cHFCxe2x80x9d) cable system which have data rates of about 10 Mega-bits-per-second (xe2x80x9cMbpsxe2x80x9d) to 30+ Mbps.
The Internet, a world-wide-network of interconnected computers, provides multi-media content including audio, video, graphics and text that requires a large bandwidth for downloading and viewing. Most Internet Service Providers (xe2x80x9cISPsxe2x80x9d) allow customers to connect to the Internet via a serial telephone line from a Public Switched Telephone Network (xe2x80x9cPSTNxe2x80x9d) at data rates including 14,400 bps, 28,800 bps, 33,600 bps, 56,000 bps and others that are much slower than the about 10 Mbps to 30+ Mbps available on a coaxial cable or HFC cable system on a cable television network.
With the explosive growth of the Internet, many customers have desired to use the larger bandwidth of a cable television network to connect to the Internet and other computer networks.
Cable modems, such as those provided by 3Com Corporation of Santa Clara, Calif., and others offer customers higher-speed connectivity to the Internet, an intranet, Local Area Networks (xe2x80x9cLANsxe2x80x9d) and other computer networks via cable television networks. These cable modems currently support a data connection to the Internet and other computer networks via a cable television network with a data rate of up to 30+ Mbps Which is a much larger data rate than can be supported by a modem used over a serial telephone line.
However, most cable television networks provide only unidirectional cable systems, supporting only a xe2x80x9cdownstreamxe2x80x9d data path. A downstream data path is the flow of data from a cable system xe2x80x9cheadendxe2x80x9d to a customer. A cable system headend is a central location in the cable television network that is responsible for sending cable signals in the downstream direction. A return data path via a telephone network, such as a public switched telephone network provided by ATandT and others, (i.e., a xe2x80x9ctelephony returnxe2x80x9d) is typically used for an xe2x80x9cupstreamxe2x80x9d data path. An upstream data path is the flow of data from the customer back to the cable system headend. A cable television system with an upstream connection to a telephony network is called a xe2x80x9cdata-over-cable system with telephony return.xe2x80x9d
An exemplary data-over-cable system with telephony return includes customer premise equipment (e.g., a customer computer), a cable modem, a cable modem termination system, a cable television network, a public switched telephone network, a telephony remote access concentrator, and a data network (e.g., the Internet). The cable modem termination system and the telephony remote access concentrator together are called a xe2x80x9ctelephony return termination system.xe2x80x9d
The cable modem termination system receives data packets from the data network and transmits them downstream via the cable television network to a cable modem attached to the customer premise equipment. The customer premise equipment sends response data packets to the cable modem, which sends response data packets upstream via public switched telephone network to the telephony remote access concentrator, which sends the response data packets back to the appropriate host on the data network.
Both the cable modem termination system and cable modems maintain network address tables for identifying the destinations of data packets and providing information for directing the packets to the appropriate customer premise equipment. Essentially, a network address table may be thought of as pairs of network addresses and forwarding addresses. Such tables are typically maintained by a protocol such as the Address Resolution Protocol. An incoming data packet at a cable modem or cable modem termination system is examined and its destination network address is determined. If a network address is present in the network address table, for the data packet, the data packet is forwarded to a corresponding forwarding address. The forwarding address may be another network address or it may be a physical address of a destination such as a Medium Access Control address.
Entries in these tables can often become stale through a failure to flush the tables upon termination of a connection. Termination could be the result of the conclusion of a session between the customer premise equipment and the network (the user logs off), or by the accidental or intentional power-down of any of the pieces of networking equipment. An Address Resolution Protocol Stack does not delete stale entries immediately, but typically waits for an Address Resolution Protocol cache timeout period and then deletes stale entries. The cache timeout may be as long as ten minutes in some cases. Thus, stale entries can occupy valuable memory space in both the cable moderns and the cable modem termination system for considerable lengths of time.
An entry may also become stale as a result of a security breach in the data-over-cable system or as a result of a failure of a cable modem or customer premise equipment to properly register with the data-over-cable system. In addition, a rogue user may breach security in a data-over-cable system by adopting addresses of a stale entry in an Address Resolution Protocol table before it is deleted by a cache timeout.
It is therefore desirable to improve the maintenance of the network address tables so that stale entries are quickly identified and removed from the table. Removal of stale entries may improve resource allocation and security in a data-over-cable system.
In accordance with an illustrative embodiment of the present invention, some of the problems associated with maintaining network address tables are overcome. A method and system for network address table maintenance in a data-over-cable system is provided. One aspect of the invention includes a method for network address table maintenance. The method includes receiving a first message including a first network address for a second network device on a first network device. The first message includes information for communicating with the second network device. The first network address is stored in a network address table associated with the first network device and a time value is associated with that first network address. A determination is made as to whether a second message is received from the second network device within the time value, and if not, the first network address is deleted from the network address table. The second message includes identification information included in the first message to identify the second network device on the first network device.
For example, the method and system of the present invention may provide for the maintenance of a network address table such as an Address Resolution Protocol table. A second network device, such as a cable modem, may fail to transmit a registration message within a certain time of receiving a message including an Internet Protocol address (e.g. in a Dynamic Host Configuration Protocol acknowledgement message). Should this happen, the addresses for the first network device are deleted for a network address table associated with a first network device, such as a cable modem termination system. This may help ensure that the device ceases communication with the network and may increase the security of the network. However, the present invention is not limited to cable modems, cable modem termination systems, or Address Resolution Protocol tables, and other network devices and address tables could be used.